The present invention generally relates to a system and a method for controlling media rendering in a network using a mobile device. More specifically, the present invention relates to a system and a method for managing, controlling and/or rendering media in a home network using remote access and/or a remote user interface. The system and the method enable a user to control media rendering from multiple storage devices and/or multiple servers connected to the home network using the mobile device. The system and the method enable a user to control media rendering on multiple rendering devices connected to the home network using the mobile device.
It is well known for a user to use multiple media servers and multiple media rendering devices to consume media objects in the home, such as, for example, audio files, video files, digital photographs and the like. For example, the media objects may be provided by media servers connected to a home network. The media objects may be stored on one or more of the media servers. The home network may also have various media rendering devices connected to the home network, such as, for example, stereos, televisions, personal computers, digital photo frames, other devices which have multimedia content rendering capability and the like. The user may browse the media objects remotely from one or more “control points” in the home network and may consume a specific media file on any compatible media rendering device connected to the home network.
The ability to organize, browse and consume media is enhanced by the availability of connection technologies, such as, for example, Universal Plug and Play (“UPnP”) Audio and Video (“AV”) standard and Digital Living Network Alliance (“DLNA”) standard. These connection technologies allow distribution of multimedia content between various storage devices and associated media rendering devices in the home network. The UPnP AV standard defines a protocol by which the media servers and the media rendering devices may be connected, controlled and used to process and play the multimedia content. The DLNA standard provides additional details and conformance points to ensure that UPnP AV-based home networking products properly communicate and work together. Products based on the UPnP AV standard and the DLNA standard allow consumers to easily access, control, and enjoy the multimedia content using a multimedia-enabled home network.
A control point application is an application which controls UPnP compatible servers and UPnP compatible rendering devices. For example, a control point application may allow the user to find and/or browse multimedia content, such as a digital video file or a digital audio file, that is available from a particular UPnP server. The control point application may allow the user to transmit the multimedia content to a particular UPnP rendering device for consumption.
Typically, the media servers, the media rendering devices, the control points and other devices connected to the home network are connected via Ethernet/wired Local Area Network (“LAN”), IEEE 1394 (“Fire Wire”), IEEE 802.11 (“Wi-Fi”) or other similar state of the art networking technologies. Mobile devices which interact with the home network are limited to wireless connection technology; therefore, the mobile devices must connect to the home network via a Wi-Fi connection. Typically, the home network also has an outside connection to the internet to enable personal computers and other devices connected to the home network to access outside content, such as, for example, web pages, multimedia files, other content available on the internet and the like.
A UPnP AV Control Point may reside on a PC, may be coupled with a media server, or may be built into a media rendering device. Alternatively, a UPnP AV Control Point may be located on a stand-alone device, such as, for example, a UPnP “Remote Control” device. To add UPnP AV Control Point functionality to personal mobile devices, the UPnP AV Control Point functionality may reside on a Personal Digital Assistant (PDA), a mobile phone, a portable video player, a portable gaming device or other mobile device. A standard UPnP AV Control Point may be added to any such mobile device which is capable of connecting to the home network. Thus, the UPnP AV Control Point is capable of communicating with the UPnP AV capable media servers and UPnP AV capable media rendering devices connected to the home network. However, the mobile device must have Wi-Fi connection capability to connect wirelessly to the home network. Therefore, a Wi-Fi connection is a requirement for any mobile device which supports standard UPnP AV Control Point functionality.
Typical communication paths used by a standard UPnP AV Control Point to control media streamed from a media server to a media rendering device connect the media server, the media rendering device and the control point. These typical communication paths use the home network to connect the media server, the media rendering device and the UPnP AV Control Point.
When using a standard UPnP AV Control Point, a control point user may browse multimedia content available on the media servers connected to the home network, may select and arrange media content objects for rendering, and may initiate and control rendering of selected multimedia content files on a selected media rendering device. The UPnP AV Control Point does not handle the multimedia content files directly. The UPnP AV Control Point requests metadata for the multimedia content files from the media servers and presents information provided by the metadata to the control point user. The control point user may use the information provided by the metadata to select one or more of the multimedia content files. Further, the UPnP AV Control Point provides an indirect reference, such as, for example, a Uniform Resource Locator (“URL”), to one of the media rendering devices to identify a specific multimedia content file which that media rendering device should render. The media rendering device is then responsible for requesting the multimedia content file directly from the media server on which the multimedia content file is stored.
Multimedia content files may be selected individually for rendering or may be placed in a “device queue” which is a list of multimedia content files. The device queue is used to transmit the multimedia content files located in the device queue to the selected media rendering device. The device queue is typically managed and maintained by the UPnP AV Control Point. The control point user has various remote-control options while the content is playing on the media rendering device, such as, for example, fast forward, rewind, pause, play, stop, volume control and the like. If the device queue is employed, the control point user has additional options to manage the device queue, such as, for example, to change an order or an arrangement of the multimedia content files, to add a multimedia content file to the device queue, to delete a multimedia content file from the device queue, to advance to a different multimedia content file within the device queue and the like.
The control point user may select a media rendering device and may instruct the UPnP AV Control Point to render contents of the device queue on the media rendering device. The UPnP AV Control Point may instruct the media rendering device to play each of the media content objects located in the device queue in sequence. The device queue is presented to the control point user as a temporary list of multimedia content files which are currently being consumed on the selected media rendering device.
While the media rendering device is rendering the media content object, the UPnP AV Control Point may, under the control of the control point user, exercise additional controls over the rendering, such as, for example, fast-forward, reverse, pause, play, stop, volume control and the like. In addition, the UPnP AV Control Point may exercise additional controls over the device queue, such as, for example, advance to the next media content object in the device queue, advance to the previous media content object in the device queue and the like.
SimpleCenter (registered trademark of Universal Electronics, Inc.), Nokia (registered trademark of Nokia Corporation) UPnP functional mobile devices, and Rudeo Play & Control on a PocketPC device (trademarks of Rudeo Consulting) are examples of UPnP AV Control Points. SimpleCenter is Windows PC software which implements a UPnP Control Point, as well as media server and media rendering device capabilities. Certain Nokia mobile phones, such as the N80 mobile phone and the N95 mobile phone, and a Nokia tablet device, the N800 Internet Tablet, have a standard UPnP Control Point located on the mobile device. Rudeo Play & Control is an add-on software product which implements a UPnP AV Control Point on the PocketPC device. Rudeo Play & Control has a standard UPnP AV Control Point with additional proprietary enhancements that are described hereafter.
UPnP AV communication protocols operate based on an assumption that a device that hosts a UPnP AV Control Point will always be powered “on” and always connected to the home network. UPnP defines an eventing framework; thus, media servers and media rendering devices may periodically transmit event messages, such as, for example, a message that indicates that a device becomes available in the home network or a message that indicates play status. For example, the message that indicates play status may be transmitted when a media rendering device has finished rendering a multimedia content file.
If the device that hosts the UPnP AV Control Point is not always powered “on” or always connected to the home network, then the UPnP AV Control Point may miss events which may need to be addressed to maintain or to control operation. UPnP AV rendering devices are simple in that they handle only one multimedia content file at a time. Thus, a UPnP AV Control Point which has device queue capability must monitor rendering by a media rendering device. When the media rendering device completes the rendering of one multimedia content file in the device queue, the UPnP AV Control Point may then inform the target media rendering device of the next multimedia content file to render. The UPnP AV Control Point manages the device queue and must continuously direct the media rendering device.
If a UPnP AV Control Point loses connection to the home network, then the device queue which the control point user has established will cease to be maintained, and the media rendering device will have no instructions on how to continue rendering the multimedia content files located in the device queue. When rendering of a current device queue object is completed, the rendering will stop which is problematic for a UPnP AV Control Point that resides on a mobile device. Mobile devices are unreliable for hosting a UPnP AV Control Point because they may be powered “off”, may utilize battery power so that insufficient battery power remains, or may be moved to a location outside of Wi-Fi connection range.
For example, the control point user may employ the UPnP AV Control Point of a Nokia N800 mobile phone to play a device queue of selected music tracks from a UPnP AV Media Server to a UPnP AV capable home stereo. If the N800 device is powered “off”, utilizes battery power so that insufficient battery power remains and/or is moved to a location outside of Wi-Fi connection range, then the home stereo will cease rendering at the end of the current music track.
Rudeo Play & Control presents a solution to this problem. An associated PC application, a Play & Control Media Server, is provided. The Play & Control Media Server is capable of hosting the device queue. The control point user may create, manage and use a device queue from the user interface of the Play & Control client on a PocketPC mobile device. The device queue may be hosted on a PC connected to the home network, where the PC executes the associated server application. In this case, the device queue is created and controlled remotely by commands sent from the PocketPC mobile device to the PC server application. The PC server application is responsible for transmitting periodic commands to the media rendering device to continue rendering the contents of the device queue. Therefore, the device queue continues to be rendered even if the mobile device is powered “off”, utilizes battery power so that insufficient battery power remains or moves to a location outside of Wi-Fi range.
The mobile control point client of Rudeo Play & Control functions as a standard UPnP AV Control Point when the PC server application is not present or when the control point user chooses to not utilize the PC server application. The mobile control point client manages the device queue internally as previously set forth for a standard UPnP AV Control Point if the PC server application is not present or the control point user chooses to not utilize the PC server application. If the PC server application is present, the mobile control point client uses a combination of standard UPnP AV protocols and proprietary protocols. For example, the mobile control point client uses a standard UPnP AV protocol to directly browse media servers for content or to directly control the media rendering device for non-queue related tasks, and uses a proprietary protocol to create, manage and control the device queue hosted by the proprietary PC server application. Direct communication with the home network is required; therefore, Rudeo's Mobile Control Point client requires that the PocketPC mobile device that hosts the mobile control point has Wi-Fi connection capability.
Existing mobile UPnP AV Control Points are limited to devices with Wi-Fi connection capabilities which is disadvantageous because many mobile devices do not have Wi-Fi connection capabilities. In addition, mobile devices that do have Wi-Fi connection capabilities tend to be high-end devices, such as business phones and PDAs, which are relatively expensive and are produced and sold in low volumes. More popular, lower-cost devices, such as mid- to low-end mobile phones, do not typically have Wi-Fi connection capabilities which prevents these mobile devices from hosting control point functionality.
Further, existing mobile UPnP AV Control Points must have specialized software installed on the mobile device, such as, for example, a UPnP stack and an associated Control Point application. The specialized software is required for the mobile device to communicate directly with UPnP compliant media servers and UPnP compliant media rendering devices connected to the home network. Requirement of the specialized software is disadvantageous because a provider must produce many variants of the specialized software to support a variety of mobile devices. Production of the variants of the specialized software burdens the provider of control point software with additional cost and effort. Furthermore, the specialized software may not be able to be installed on the mobile device when the mobile device is originally sold to the user. The user must then obtain and install the correct variant of the specialized software on the mobile device. Many users will not make use of the specialized software if effort is required to obtain and install the specialized software.
Still further, existing mobile UPnP AV Control Points have been limited to one device queue that directs multimedia content to one media rendering device at a time. However, most multimedia-capable home networks have a variety of media rendering devices.
Moreover, existing mobile UPnP AV Control Points limit use and control of the device queue to the control point and associated control point user which created the device queue. Control of a device queue is not shared between multiple users on different mobile devices. However, the media rendering devices connected to the home network are typically shared between multiple residents of the home, and each resident may have a different mobile device which may be used to control rendering of the multimedia content. For example, User B may enter a room of the home and find a digital stereo already playing a queue of music content previously created by User A using a mobile control point on a mobile device owned by User A. User B may wish to see what music content is queued on the digital stereo or may wish to control or edit that music content. However, User B typically does not have access to view, edit, control or manage the queue from which the music content is playing since that queue is under the control and ownership of the mobile control point that resides on the mobile device of User A.
A need, therefore, exists for a system and a method for controlling media rendering in a network using a mobile device. Further, a need exists for a system and a method for managing, controlling and/or rendering media in a home network using remote access and/or a remote user interface. Still further, a need exists for a system and a method for controlling media rendering in a network using a mobile device that enable a user to control media rendering from multiple storage devices and/or multiple servers in the network. Still further, a need exists for a system and a method for controlling media rendering in a network using a mobile device that enable a user to control media rendering on multiple rendering devices connected to the home network using the mobile device. Still further, a need exists for a system and a method for controlling media rendering in a network that use a mobile device as a control point in the network without the need for specialized software to be installed on the mobile device. Still further, a need exists for a system and a method for controlling media rendering in a network using a mobile device that enables a single control point to create, control, manage, and render content from multiple device queues wherein each device queue transmits media content to a different selected media rendering device. Moreover, a need exists for a system and a method for controlling media rendering in a network using a mobile device that allows device queues to be shared between multiple users in a home network.